package com.example.data.mapper;

import com.example.data.entity.CleanedData;
import com.example.data.entity.PreprocessedData;
import org.apache.ibatis.annotations.*;
import java.util.List;

@Mapper
public interface PreprocessedDataMapper {
    // 插入预处理结果
    void insert(PreprocessedData data);

    // 查询未预处理的清洗数据
    List<CleanedData> selectUnprocessedCleanedData();

    // 标记清洗数据为“已预处理”
    void markAsPreprocessed(Long cleanedId);

    // 查询未抽取实体的预处理数据（核心方法）
    List<PreprocessedData> selectUnExtractedEntities(@Param("limit") Integer limit);

    // 标记预处理数据为“已抽取实体”
    void markEntityExtracted(@Param("id") Long id);

    List<PreprocessedData> selectUnExtractedRelations(@Param("limit") Integer limit);

    void markRelationExtracted(@Param("id") Long id, @Param("status") Integer status);

    PreprocessedData selectById(@Param("id") Long id);

}